using System;
namespace Rsdn.TreeGrid
{

    /// <summary>
    /// Аргументы события GetData
    /// </summary>
    public class GetDataEventArgs : EventArgs
    {
        private readonly CellInfo[] _cellInfos;
        private readonly ITreeNode _node;
        private NodeInfo _nodeInfo;

        /// <summary>
        /// Инициализирует экземпляр
        /// </summary>
        public GetDataEventArgs(ITreeNode node, NodeInfo nodeInfo, CellInfo[] cellInfos)
        {
			_cellInfos = cellInfos;
			_node = node;
			_nodeInfo = nodeInfo;
        }

        /// <summary>
        /// Доступ к данным форматирования ячеек.
        /// </summary>
        public CellInfo[] CellInfos
        {
            get
            {
                return _cellInfos;
            }
        }

        /// <summary>
        /// Узел, для которого запрашиваются данные.
        /// </summary>
        public ITreeNode Node
        {
            get
            {
                return _node;
            }
        }

        /// <summary>
        /// Данные об отрисовке узла.
        /// </summary>
        public NodeInfo NodeInfo
        {
            get
            {
                return _nodeInfo;
            }

            set
            {
                _nodeInfo = value;
            }
        }
    }
}

